<!DOCTYPE html>
<html lang="zh">

<head>
    <meta charset="UTF-8">
    <title>《软件测试理论》2024-2025学年第二学期实操考核 A 卷</title>
    <style>
        body {
            font-family: "Microsoft YaHei", Arial, sans-serif;
            margin: 40px;
            line-height: 1.8;
        }

        h1,
        h2,
        h3 {
            color: #2c3e50;
        }

        h1 {
            font-size: 2.2em;
            margin-bottom: 0.5em;
        }

        h2 {
            font-size: 1.5em;
            margin-top: 2em;
        }

        h3 {
            font-size: 1.2em;
            margin-top: 1.5em;
        }

        ul,
        ol {
            margin-left: 2em;
        }

        .score {
            color: #2980b9;
            font-weight: bold;
        }

        .section {
            margin-bottom: 2em;
        }

        .require {
            color: #16a085;
        }

        .tip {
            color: #888;
            font-size: 0.95em;
        }

        hr {
            margin: 2em 0;
        }
    </style>
</head>

<body>
    <h1 style="text-align: center;">《软件测试理论》2024-2025学年第二学期<br>
        实操考核 A 卷</h1>
    <div class="section">
        <strong>试题类型：</strong>实操题<br>
        <strong>考试工具：</strong>JMeter<br>
        <strong>考试内容：</strong>基于接口文档和测试用例，完成文章管理接口的功能测试
    </div>
    <hr>
    <h2>一、考试说明</h2>
    <ol>
        <li>本试卷为实操考试，需使用 JMeter 工具完成。</li>
        <li>所有测试均基于“文章管理接口”，接口文档和测试用例已提供。</li>
        <li>请根据题目要求，设计并实现对应的 JMeter 测试计划，<br>
            保存为 <strong>20243180000张三.jmx</strong> 文件。</li>
        <li>所有测试请求均指向服务器 <code>http://120.24.176.10:3000</code>。</li>
    </ol>
    <hr>
    <h2>二、考试题目</h2>

    <h3>1. JMeter 测试计划设计 <span class="score">（20分）</span></h3>
    <ul>
        <li>请根据接口文档，设计一个完整的 JMeter 测试计划，包含以下内容：</li>
        <ul>
            <li>线程组（用户数1，循环次数1）</li>
            <li>HTTP请求默认值配置</li>
            <li>结果树监听器</li>
            <li>断言（如响应码、响应内容等）</li>
        </ul>
    </ul>
    <br>
    <h3>2. 添加文章接口测试（/articles，POST） <span class="score">（20分）</span></h3>
    <ul>
        <li>根据测试用例文档，完成以下场景的 JMeter 测试：</li>
        <ul>
            <li>正常添加（所有字段填写，预期成功）</li>
            <li>缺少必填项（如缺少 title/content/author，预期失败）</li>
        </ul>
    </ul>


    <h3>3. 获取所有文章接口测试（/articles，GET） <span class="score">（20分）</span></h3>
    <ul>
        <li>测试返回文章列表、无文章时返回空数组两种情况</li>
    </ul>


    <h3>4. 获取单篇文章接口测试（/articles/:id，GET） <span class="score">（20分）</span></h3>
    <ul>
        <li>测试获取存在的文章、获取不存在的文章、id 非数字三种情况</li>
    </ul>


    <h3>5. 更新文章接口测试（/articles/:id，PUT） <span class="score">（20分）</span></h3>
    <ul>
        <li>测试全部字段更新、部分字段更新、文章不存在、id 非数字四种情况</li>
    </ul>


    <hr>
    <h2>三、附加要求</h2>
    <ul>
        <li>所有测试请求需严格按照接口文档参数要求设置</li>
        <li>断言需覆盖状态码、响应内容等关键点</li>
        <li><code>.jmx</code> 文件命名格式为学号+姓名，例如：<strong>20243180000张三</strong></li>
    </ul>
    <br>
    <div class="tip"><strong>祝考试顺利！</strong></div>
</body>

</html>